package com.sky.annotation;

import com.sky.enumeration.OperationType;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 自定义的注解，用于标识方法需要进行功能字段的自动填充
 * @author XRY
 * @date 2023年07月26日19:15
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface AutoFill {
    //数据库操作事件

    /**
     * OperationType value();:
     * 这行代码定义了注解 @AutoFill 中的一个成员变量 value()，
     * 并且指定了其返回类型为 OperationType 枚举类型。
     * 注意，这里的 value() 并不是一个普通的方法，而是一个特殊的属性成员。
     * 这个属性成员可以在使用 @AutoFill 注解时进行赋值。
     * @return
     */
    OperationType value();
}
